package com.jack.cms.oss.core;
//package com.calm.talent.core.common.file.core;
//
//import java.text.FieldPosition;
//import java.text.ParseException;
//import java.text.SimpleDateFormat;
//import java.util.ArrayList;
//import java.util.Calendar;
//import java.util.Date;
//import java.util.GregorianCalendar;
//import java.util.HashMap;
//import java.util.List;
//import java.util.Locale;
//import java.util.Map;
//
//import org.joda.time.LocalDate;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//
///**
// * 
// * @author luhj
// */
//public class DateUtil {
//  private static Logger logger = LoggerFactory.getLogger(DateUtil.class);
//  public static final String DATE = "yyyy-MM-dd";
//  public static final String DATETIME = "yyyy-MM-dd HH:mm:ss";
//  public static final String LONG_DATE_TIME = "yyyy-MM-dd HH:mm:ss zzz";
//  public static final String TIME = "HH:mm:ss";
//  public static final String HOUR_MINUTES = "HH:mm";
//  public static final String SHORT_DATE = "yyyy-MM-dd HH:mm";
//
//  /**
//   * 判断时间格式是否正确
//   *
//   * @param dateString 要判断的时间字符串，如"2014-06-01"
//   * @param dateFormat 要判断的时间字符串应该符合的时间格式，如"yyyy-MM-dd"
//   * @return 正确返回true,错误返回false
//   */
//  public static boolean isDate(String dateString, String dateFormat) {
//    SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
//    try {
//      sdf.parse(dateString);
//    } catch (ParseException e) {
//      logger.info("异常信息为:" + e.getMessage());
//      return false;
//    }
//    return true;
//  }
//
//  /**
//   * 将字符串dateStr解析为yyyy-MM-dd格式的日期
//   *
//   * @param dateStr
//   * @return
//   */
//  public static Date parseToDate(String dateStr) {
//    return parseDate(dateStr, DATE);
//  }
//
//  /**
//   * 将字符串dateStr解析为yyyy-MM-dd HH:mm:ss格式的日期
//   *
//   * @param dateStr
//   * @return
//   */
//  public static Date parseToDateTime(String dateStr) {
//    return parseDate(dateStr, DATETIME);
//  }
//
//  /**
//   * 将字符串dateStr解析为dateFormat格式的日期,如果dateFormat为空，则以yyyy-MM-dd HH:mm:ss格式解析
//   *
//   * @param dateStr
//   * @param pattern
//   * @return
//   */
//  public static Date parseDate(String dateStr, String pattern) {
//    if (dateStr == null || dateStr.trim().length() == 0) {
//      return null;
//    }
//    SimpleDateFormat fmt = new SimpleDateFormat(pattern == null ? DATETIME : pattern);
//    try {
//      return fmt.parse(dateStr);
//    } catch (Exception e) {
//      logger.info("异常信息为:" + e.getMessage());
//      return null;
//    }
//  }
//
//  /**
//   * 作为开始时间，需要HH：mm：ss为00:00:00
//   *
//   * @param date
//   * @return
//   */
//  public static Date getAsStartDateTime(Date date) {
//    if (date == null)
//      return null;
//    return setTimeForDate(date, "00:00:00");
//  }
//
//  /**
//   * 作为结束时间，需要HH：mm：ss为23:59:59
//   *
//   * @param date
//   * @return
//   */
//  public static Date getAsEndDateTime(Date date) {
//    if (date == null)
//      return null;
//    return setTimeForDate(date, "23:59:59");
//  }
//
//  /**
//   * n大于零，获得给定日期 n 天后的日期<br>
//   * n小于零，获得给定日期 n 天前的日期
//   *
//   * @param date
//   * @param n
//   * @return
//   */
//  public static Date addDay(Date date, int n) {
//    if (date == null) {
//      return null;
//    }
//    Calendar cal = Calendar.getInstance();
//    cal.setTime(date);
//    cal.add(Calendar.DATE, n);
//    return cal.getTime();
//  }
//
//  /**
//   * 
//   * @param date
//   * @param timeUnit
//   *        指Calendar.YEAR：年，Calendar.DAY_OF_YEAR：天;Calendar.HOUR_OF_DAY:小时;Calendar.MINUTE：分;
//   *        Calendar .SECOND：秒;Calendar.MILLISECOND：毫秒;
//   * @param value
//   * @return
//   */
//  public static Date set(Date date, int timeUnit, int value) {
//    Calendar cal = Calendar.getInstance();
//    cal.setTime(date);
//    cal.set(timeUnit, value);
//    return cal.getTime();
//  }
//
//  /**
//   * 根据TimeUnit增加指定日期的的时间
//   * 
//   * @author andrexu
//   * @param date 要增加的日期
//   * @param timeUnit 增加的日历字段（只能取 DAYS 到 MILLISECONDS 之间的枚举，否则报错）
//   * @param value 增加的值(当值为负数时表示减少)
//   * @return
//   */
//  public static Date add(Date date, int timeUnit, int value) {
//    Calendar cal = Calendar.getInstance();
//    cal.setTime(date);
//    cal.add(timeUnit, value);
//    return cal.getTime();
//  }
//
//  /**
//   * 
//   * @param date
//   * @param timeUnit
//   *        指Calendar.YEAR：年，Calendar.DAY_OF_YEAR：天;Calendar.HOUR_OF_DAY:小时;Calendar.MINUTE：分;
//   *        Calendar .SECOND：秒;Calendar.MILLISECOND：毫秒;
//   * @return
//   */
//  public static int getValue(Date date, int timeUnit) {
//    Calendar cal = Calendar.getInstance();
//    cal.setTime(date);
//    return cal.get(timeUnit);
//  }
//
//  /**
//   *
//   * @param date
//   * @return 返回yyyy-MM-dd格式的日期字符串
//   */
//  public static String formatToDate(Date date) {
//    return new SimpleDateFormat(DATE).format(date);
//  }
//
//  /**
//   *
//   * @param date
//   * @return 返回HH:mm:ss格式的时间字符串
//   */
//  public static String formatToTime(Date date) {
//    return new SimpleDateFormat(TIME).format(date);
//  }
//
//  /**
//   *
//   * @param date
//   * @return 返回HH:mm格式的时间字符串
//   */
//  public static String formatToHourAndMinutes(Date date) {
//    return new SimpleDateFormat(HOUR_MINUTES).format(date);
//  }
//
//  /**
//   *
//   * @param date
//   * @return 返回yyyy-MM-dd HH:mm:ss格式的日期时间字符串
//   */
//  public static String formatToDateTime(Date date) {
//    return new SimpleDateFormat(DATETIME).format(date);
//  }
//
//  /**
//   *
//   * @param date
//   * @return 返回yyyy-MM-dd HH:mm:ss格式的日期时间字符串
//   */
//  public static String formatToDateTime(Date date, String format) {
//    return new SimpleDateFormat(format).format(date);
//  }
//
//  /**
//   * 设置日期的时间为timeString给定的值,timeString为空则返回原date
//   *
//   * @param date
//   * @param timeString 格式为 HH:mm:ss(如 12:10:00)
//   * @return
//   */
//  public static Date setTimeForDate(Date date, String timeString) {
//    if (date == null || timeString == null) {
//      return date;
//    }
//    return DateUtil.parseToDateTime(DateUtil.formatToDate(date) + " " + timeString);
//  }
//
//  public static int getDayNumBetween(Date fromDate, Date toDate) {
//    if (null == fromDate || null == toDate) {
//      return -1;
//    }
//    fromDate = getAsStartDateTime(fromDate);
//    toDate = getAsStartDateTime(toDate);
//    long intervalMilli = toDate.getTime() - fromDate.getTime();
//    int ret = (int) (intervalMilli / (24 * 60 * 60 * 1000));
//    return ret < 0 ? ret - 1 : ret + 1;
//  }
//
//  public static Date getToday() {
//    return setTimeForDate(new Date(), "00:00:00");
//  }
//
//  public static Date String2ShortDate(String dateStr) {
//    SimpleDateFormat formatter = new SimpleDateFormat(SHORT_DATE);
//    Date date = null;
//    try {
//      date = formatter.parse(dateStr);
//    } catch (ParseException e) {
//      // TODO Auto-generated catch block
//      logger.info("异常信息为:" + e.getMessage());
//    }
//
//    return date;
//  }
//
//  /**
//   * 日期转化为字符串
//   *
//   * @param date
//   * @param flag true:日期中带时分秒，false:日期中不带时分秒
//   * @return
//   */
//  public static String Date2String(Date date, boolean flag) {
//
//    SimpleDateFormat formatter = getDateFormat(flag);
//    String dateTime = formatter.format(date);
//    return dateTime;
//
//  }
//
//  /**
//   * 日期转化为字符串
//   *
//   * @param date
//   * @param formatterString 日期格式化字符串，如"yyyy-MM-dd HH:mm:ss";
//   * @return
//   */
//  public static String date2String(Date date, String formatterString) {
//
//		SimpleDateFormat formatter = new SimpleDateFormat(formatterString);
//		String dateTime = formatter.format(date);
//		return dateTime;
//
//	}
//
//	/**
//	 * 字符串转化为日期
//	 * 
//	 * @param dateStr
//	 * @param flag
//	 *            true:日期中带时分秒，false:日期中不带时分秒
//	 * @return
//	 */
//	public static Date String2Date(String dateStr, boolean flag) {
//
//		SimpleDateFormat formatter = getDateFormat(flag);
//		Date date = null;
//		try {
//			date = formatter.parse(dateStr);
//		} catch (ParseException e) {
//			// TODO Auto-generated catch block
//          logger.info("异常信息为:" + e.getMessage());
//		}
//
//		return date;
//	}
//
//	public static SimpleDateFormat getDateFormat(boolean flag) {
//		SimpleDateFormat formatter = null;
//		if (flag) {
//			formatter = new SimpleDateFormat(DATETIME);
//		} else {
//			formatter = new SimpleDateFormat(DATE);
//		}
//
//		return formatter;
//	}
//
//	/**
//	 * 获取 时间区域里的 yyyy-mm-dd 包括 开始时间和结束时间
//	 * 
//	 * @param starttime
//	 *            开始时间
//	 * @param endtime
//	 *            结束时间
//	 * @return
//	 */
//	public static Map<String, List<String>> getXlistByDay(Date starttime, Date endtime) {
//		try {
//			Map<String, List<String>> xlist = new HashMap<String, List<String>>();
//			Calendar startCalendar = Calendar.getInstance();
//			Calendar endCalendar = Calendar.getInstance();
//			startCalendar.setTime(starttime);
//			endCalendar.setTime(endtime);
//			SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
//			SimpleDateFormat showformat = new SimpleDateFormat("yyyy.MM.dd");
//			List<String> showxlist = new ArrayList<String>();
//			List<String> tempxlist = new ArrayList<String>();
//			endCalendar.add(Calendar.DAY_OF_MONTH, 1);
//			while (true) {
//				if (startCalendar.getTimeInMillis() < endCalendar.getTimeInMillis()) {
//					tempxlist.add(df.format(startCalendar.getTime()));
//					showxlist.add(showformat.format(startCalendar.getTime()));
//				} else {
//					break;
//				}
//				startCalendar.add(Calendar.DAY_OF_MONTH, 1);
//			}
//			xlist.put("xlist", tempxlist);
//			xlist.put("showxlist", showxlist);
//			return xlist;
//		} catch (Exception e) {
//          logger.info("异常信息为:" + e.getMessage());
//			return null;
//		}
//	}
//
//	/**
//	 * 获取时间区间内 的所有月份 yyyy-mm
//	 * 
//	 * @param starttime
//	 * @param endtime
//	 * @return
//	 */
//	public static Map<String, List<String>> getXlistByMonth(Date starttime, Date endtime) {
//		try {
//			Map<String, List<String>> xlist = new HashMap<String, List<String>>();
//			List<String> tempxList = new ArrayList<String>();
//			List<String> showxlist = new ArrayList<String>();
//			SimpleDateFormat monthFormat = new SimpleDateFormat("yyyy-MM");
//			SimpleDateFormat showFormat = new SimpleDateFormat("yyyy.MM");
//
//			@SuppressWarnings("deprecation")
//			int months = (endtime.getYear() - starttime.getYear()) * 12 + (endtime.getMonth() - starttime.getMonth());
//			for (int i = 0; i <= months; i++) {
//				Calendar calendar = Calendar.getInstance();
//				calendar.setTime(starttime);
//				calendar.add(Calendar.MONTH, i);
//				tempxList.add(monthFormat.format(calendar.getTime()));
//				showxlist.add(showFormat.format(calendar.getTime()));
//
//			}
//			xlist.put("xlist", tempxList);
//			xlist.put("showxlist", showxlist);
//			return xlist;
//		} catch (Exception e) {
//          logger.info("异常信息为:" + e.getMessage());
//			return null;
//		}
//
//	}
//
//	/**
//	 * 获取时间区域内所有 yearweek yyyy+weekofyear weekofyear:case 2014-12-29的
//	 * weekyear是201501
//	 * @return
//	 * @throws Exception
//	 */
//	public static Map<String, List<String>> getXlistByWeek(Date starttime, Date endtime) throws Exception {
//		try {
//
//			Calendar calendarStartTime = Calendar.getInstance();
//			Calendar calendarEndTime = Calendar.getInstance();
//			Map<String, List<String>> xlist = new HashMap<String, List<String>>();
//			calendarStartTime.setTime(starttime);
//			calendarEndTime.setTime(endtime);
//			int calendarStartTimeWeekYear = calendarStartTime.getWeekYear();
//			int calendarEndTimeWeekYear = calendarEndTime.getWeekYear();
//			// 用于储存 开始时间和结束时间中所有的周的和该周所有的年份 以及 该州的开始日期和结束日期
//			List<String> tempxlist = new ArrayList<String>();
//			List<String> showxlist = new ArrayList<String>();
//			int calendarStartTimeWeek = calendarStartTime.get(Calendar.WEEK_OF_YEAR);
//			// 开始时间的week数
//			int calendarEndTimeWeek = calendarEndTime.get(Calendar.WEEK_OF_YEAR);
//			// 结束时间的week数
//			String startyearString = Integer.toString(calendarStartTimeWeekYear);
//			String endyearString = Integer.toString(calendarEndTimeWeekYear);
//
//			if (calendarStartTimeWeekYear == calendarEndTimeWeekYear) {
//
//				for (int i = calendarStartTimeWeek; i <= calendarEndTimeWeek; i++) {
//					tempxlist.add(startyearString
//							+ (Integer.toString(i).length() > 1 ? Integer.toString(i) : "0" + Integer.toString(i)));
//					showxlist.add(getStartandEndDay(calendarStartTimeWeekYear, i));
//				}
//				showxlist.set(0,
//						new SimpleDateFormat("yyyy.MM.dd").format(starttime) + "~" + showxlist.get(0).split("~")[1]);
//				showxlist.set(showxlist.size() - 1, showxlist.get(showxlist.size() - 1).split("~")[0] + "~"
//						+ new SimpleDateFormat("yyyy.MM.dd").format(endtime));
//				xlist.put("xlist", tempxlist);
//				xlist.put("showxlist", showxlist);
//				return xlist;
//			}
//			// 跨年
//			else {
//				int maxweeks = calendarStartTime.getWeeksInWeekYear();
//				for (int i = calendarStartTimeWeek; i <= maxweeks; i++) {
//					tempxlist.add(startyearString
//							+ (Integer.toString(i).length() > 1 ? Integer.toString(i) : "0" + Integer.toString(i)));
//					showxlist.add(getStartandEndDay(calendarStartTimeWeekYear, i));
//				}
//				for (int i = 1; i <= calendarEndTimeWeek; i++) {
//					tempxlist.add(endyearString
//							+ (Integer.toString(i).length() > 1 ? Integer.toString(i) : "0" + Integer.toString(i)));
//					showxlist.add(getStartandEndDay(calendarEndTimeWeekYear, i));
//				}
//				showxlist.set(0,
//						new SimpleDateFormat("yyyy.MM.dd").format(starttime) + "~" + showxlist.get(0).split("~")[1]);
//				showxlist.set(showxlist.size() - 1, showxlist.get(showxlist.size() - 1).split("~")[0] + "~"
//						+ new SimpleDateFormat("yyyy.MM.dd").format(endtime));
//				xlist.put("xlist", tempxlist);
//				xlist.put("showxlist", showxlist);
//				return xlist;
//			}
//		} catch (Exception e) {
//          logger.info("异常信息为:" + e.getMessage());
//			return null;
//		}
//
//	}
//
//	/**
//	 * 获取该年 第几周的开始时间和结束时间
//	 * 
//	 * @param year
//	 * @param week
//	 * @return
//	 */
//	public static String getStartandEndDay(int year, int week) {
//		try {
//			String time = "";
//			SimpleDateFormat df = new SimpleDateFormat("yyyy.MM.dd");
//			Calendar c = new GregorianCalendar(Locale.CHINA);
//			c.set(Calendar.YEAR, year);
//			c.set(Calendar.WEEK_OF_YEAR, week);
//			c.setFirstDayOfWeek(Calendar.MONDAY);
//			c.set(Calendar.DAY_OF_WEEK, c.getFirstDayOfWeek());
//			time = df.format(c.getTime());
//			c.roll(Calendar.DAY_OF_WEEK, 6);
//			time = time + "~" + df.format(c.getTime());
//			return time;
//		} catch (Exception e) {
//          logger.info("异常信息为:" + e.getMessage());
//			return null;
//		}
//	}
//
//	/**
//	 * 获取时间段内的天数
//	 * 
//	 * @param starttime
//	 * @param endtime
//	 * @return
//	 * @throws Exception
//	 */
//	public static int getDays(Date starttime, Date endtime) throws Exception {
//		int days = (int) ((endtime.getTime() - starttime.getTime()) / ((1000 * 60 * 60 * 24)));
//		if (days < 0) {
//			throw new Exception("开始时间不能大于结束时间");
//		} else {
//			return days;
//		}
//	}
//
//	/**
//	 * 获取时间段内的天数
//	 * 
//	 * @param starttimeStr
//	 * @param endtimeStr
//	 * @return
//	 * @throws Exception
//	 */
//	public static int getDays(String starttimeStr, String endtimeStr) throws Exception {
//		Date starttime = parseToDate(starttimeStr);
//		Date endtime = parseToDate(endtimeStr);
//		int days = (int) ((endtime.getTime() - starttime.getTime()) / ((1000 * 60 * 60 * 24)));
//		if (days < 0) {
//			throw new Exception("开始时间不能大于结束时间");
//		} else {
//			return days;
//		}
//	}
//
//	/**
//	 * 
//	 * 获取指定日期前几天的日期
//	 * 
//	 * @param dateStr
//	 * @param days
//	 * @return
//	 * @throws Exception
//	 */
//	public static String getLastDay(String dateStr, int days) throws Exception {
//		SimpleDateFormat dateFormat = new SimpleDateFormat(DATE);
//		Date date = parseToDate(dateStr);
//		Calendar rightNow = Calendar.getInstance();
//		rightNow.setTime(date);
//		rightNow.add(Calendar.DATE, -days);// 你要加减的日期 -2為前兩天
//		Date nowDate = rightNow.getTime();
//
//		StringBuffer sbf = new StringBuffer("");
//		StringBuffer reStr = dateFormat.format(nowDate, sbf, new FieldPosition(0));
//		return reStr.toString();
//	}
//
//	/**
//	 * x以 时段 为单位时 添加 显示间隔数
//	 * 
//	 * @param xlist
//	 * @param days
//	 */
//	protected void intervalByDay(Map<String, Object> xlist) {
//		xlist.put("interval", 0);
//	}
//
//	/**
//	 * x以 yyyy-mm-dd 为单位时 添加 显示间隔数
//	 * 
//	 * @param xlist
//	 * @param days
//	 */
//	protected void intervalByDays(Map<String, Object> xlist, int days) {
//		if (days > 10 && days <= 20) {
//			xlist.put("interval", 0);
//		} else if (days > 20 && days <= 31) {
//			xlist.put("interval", 0);
//		} else {
//			xlist.put("interval", 0);
//		}
//
//	}
//
//	/**
//	 * x以 周 为单位 时候 添加显示间隔数
//	 * 
//	 * @param xlist
//	 * @param weeksCount
//	 */
//	public static void intervalByWeek(Map<String, Object> xlist, int weeksCount) {
//
//		// 7<周数<=14,每隔一周显示一个日期区间
//		if (weeksCount > 7 && weeksCount <= 14) {
//			xlist.put("interval", 0);
//		}
//		// 每隔2周
//		if (weeksCount > 14 && weeksCount <= 21) {
//			xlist.put("interval", 0);
//		}
//		if (weeksCount > 21) {
//			xlist.put("interval", 0);
//		} else {
//			xlist.put("interval", 0);
//		}
//
//	}
//
//	/**
//	 * x以 月 为单位 时候 添加显示间隔数
//	 * 
//	 * @param xlist
//	 * @param weeksCount
//	 */
//	public static void intervalByMonth(Map<String, Object> xlist) {
//		xlist.put("interval", 0);
//	}
//
//	/**
//	 * 获取当年的所有月份
//	 * 
//	 * @return
//	 */
//	public static Map<String, List<String>> getMothsByCurrentYear() {
//		Calendar now = Calendar.getInstance();
//		Map<String, List<String>> xlist = new HashMap<String, List<String>>();
//		String year = Integer.toString(now.get(Calendar.YEAR));
//		List<String> months = new ArrayList<String>();
//		for (int i = 1; i <= 12; i++) {
//			if (i < 10) {
//				months.add(year + "-0" + i);
//			} else {
//				months.add(year + "-" + i);
//			}
//		}
//		xlist.put("xlist", months);
//		xlist.put("showxlist", months);
//		return xlist;
//
//	}
//
//	/**
//	 * 获取当前月的所有周
//	 * 
//	 * @return
//	 * @throws Exception
//	 */
//	public static Map<String, List<String>> getWeeksByCurrentMonth() throws Exception {
//
//		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
//		SimpleDateFormat yformat = new SimpleDateFormat("yyyy-MM");
//		Date currenttime = new Date();
//		Calendar c = new GregorianCalendar(Locale.CHINA);
//		int max = c.getActualMaximum(Calendar.DAY_OF_MONTH);
//		Date starttime = format.parse(yformat.format(currenttime) + "-" + 1);
//		Date endtime = format.parse(yformat.format(currenttime) + "-" + max);
//		Map<String, List<String>> xlist = getXlistByWeek(starttime, endtime);
//		return xlist;
//	}
//
//	/**
//	 * 获取当周的所有日期
//	 * 
//	 * @return
//	 */
//	public static Map<String, List<String>> getdaysByCurrentWeek() {
//		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
//		Date currenttime = new Date();
//		Date fdate;
//		List<String> xlist = new ArrayList<String>();
//		@SuppressWarnings("deprecation")
//		Long fTime = currenttime.getTime() - currenttime.getDay() * 24 * 3600000;
//		for (int a = 1; a <= 7; a++) {
//			fdate = new Date();
//			fdate.setTime(fTime + (a * 24 * 3600000));
//			xlist.add(format.format(fdate));
//		}
//		Map<String, List<String>> map = new HashMap<String, List<String>>();
//		map.put("xlist", xlist);
//		map.put("showxlist", xlist);
//		return map;
//	}
//
//	public static Map<String, List<String>> getdaysByCurrentMonth() {
//		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
//		SimpleDateFormat phoneformat = new SimpleDateFormat("MM.dd");
//		List<String> xlist = new ArrayList<String>();
//		List<String> showxlist = new ArrayList<String>();
//
//		Calendar cal = Calendar.getInstance();
//		cal.setTime(new Date());
//		cal.set(Calendar.DATE, 1);
//		int month = cal.get(Calendar.MONTH);
//		while (cal.get(Calendar.MONTH) == month) {
//			xlist.add(format.format(cal.getTime()));
//			showxlist.add(phoneformat.format(cal.getTime()));
//			cal.add(Calendar.DATE, 1);
//		}
//		Map<String, List<String>> map = new HashMap<String, List<String>>();
//		map.put("xlist", xlist);
//		map.put("showxlist", showxlist);
//		return map;
//	}
//
//	/**
//	 * 获取一天时段
//	 * 
//	 * @return
//	 */
//	public static Map<String, List<String>> getTime() {
//		Map<String, List<String>> map = new HashMap<String, List<String>>();
//		List<String> xlist = new ArrayList<String>();
//		List<String> showxlist = new ArrayList<String>();
//		xlist.add("00");
//		showxlist.add("00:00");
//		xlist.add("01");
//		showxlist.add("01:00");
//		xlist.add("02");
//		showxlist.add("02:00");
//		xlist.add("03");
//		showxlist.add("03:00");
//		xlist.add("04");
//		showxlist.add("04:00");
//		xlist.add("05");
//		showxlist.add("05:00");
//		xlist.add("06");
//		showxlist.add("06:00");
//		xlist.add("07");
//		showxlist.add("07:00");
//		xlist.add("08");
//		showxlist.add("08:00");
//		xlist.add("09");
//		showxlist.add("09:00");
//		xlist.add("10");
//		showxlist.add("10:00");
//		xlist.add("11");
//		showxlist.add("11:00");
//		xlist.add("12");
//		showxlist.add("12:00");
//		xlist.add("13");
//		showxlist.add("13:00");
//		xlist.add("14");
//		showxlist.add("14:00");
//		xlist.add("15");
//		showxlist.add("15:00");
//		xlist.add("16");
//		showxlist.add("16:00");
//		xlist.add("17");
//		showxlist.add("17:00");
//		xlist.add("18");
//		showxlist.add("18:00");
//		xlist.add("19");
//		showxlist.add("19:00");
//		xlist.add("20");
//		showxlist.add("20:00");
//		xlist.add("21");
//		showxlist.add("21:00");
//		xlist.add("22");
//		showxlist.add("22:00");
//		xlist.add("23");
//		showxlist.add("23:00");
//		map.put("xlist", xlist);
//		map.put("showxlist", showxlist);
//		return map;
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期当年第一天日期
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:25:03
//	 */
//	public static Date getFirstDayOfYear(Date date) {
//		LocalDate jodaDate = new LocalDate(date);
//		return jodaDate.dayOfYear().withMinimumValue().toDate();
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期 当年最后一天的日期
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:24:24
//	 */
//	public static Date getLastDayOfYear(Date date) {
//		LocalDate jodaDate = new LocalDate(date);
//		return jodaDate.dayOfYear().withMaximumValue().toDate();
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期 当年最后一天的最后时间
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:24:24
//	 */
//	public static Date getLastTimeOfYear(Date date) {
//		Date arg = getLastDayOfYear(date);
//		return getAsEndDateTime(arg);
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期当月的最早一天日期
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:26:27
//	 */
//	public static Date getFirstDayOfMonth(Date date) {
//		LocalDate joda = new LocalDate(date);
//		return joda.dayOfMonth().withMinimumValue().toDate();
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期当月最后一天日期
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:26:08
//	 */
//	public static Date getLastDayOfMonth(Date date) {
//		LocalDate joda = new LocalDate(date);
//		return joda.dayOfMonth().withMaximumValue().toDate();
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期当月最后时间(精确到秒)
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:26:08
//	 */
//	public static Date getLastTimeOfMonth(Date date) {
//		Date arg = getLastDayOfMonth(date);
//		return getAsEndDateTime(arg);
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期当周的最早一天日期
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:26:53
//	 */
//
//	public static Date getFirstDayOfWeek(Date date) {
//		LocalDate joda = new LocalDate(date);
//		return joda.dayOfWeek().withMinimumValue().toDate();
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期当周的最晚一天日期
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:27:20
//	 */
//	public static Date getLastDayOfWeek(Date date) {
//		LocalDate joda = new LocalDate(date);
//		return joda.dayOfWeek().withMaximumValue().toDate();
//	}
//
//	/**
//	 * @author :qianc
//	 * @Description: 获取给定日期当周最晚时间(精确到秒) eg: xxx 月，日，23:59:59
//	 * @param date
//	 * @return Date
//	 * @create 2015年1月7日下午6:27:20
//	 */
//	public static Date getLastTimeOfWeek(Date date) {
//		Date arg = getLastDayOfWeek(date);
//		return getAsEndDateTime(arg);
//	}
//
//	/**
//	 * 获取当前日期是星期几，如“星期一”
//	 * 
//	 * @param date
//	 * @return 当前日期是星期几
//	 */
//	public static String getWeekOfDate(Date date) {
//		String[] weekDays = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
//		Calendar cal = Calendar.getInstance();
//		cal.setTime(date);
//		int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
//		if (w < 0)
//			w = 0;
//		return weekDays[w];
//	}
//
//	/**
//	 * 一天的开始时间
//	 * 
//	 * @return
//	 */
//	public static String getStartTime() {
//		Calendar c1 = new GregorianCalendar();
//		c1.set(Calendar.HOUR_OF_DAY, 0);
//		c1.set(Calendar.MINUTE, 0);
//		c1.set(Calendar.SECOND, 0);
//		return DateUtil.formatToDateTime(c1.getTime());
//	}
//
//	/**
//	 * 一天的结束时间
//	 * 
//	 * @return
//	 */
//	public static String getEndTime() {
//		Calendar c2 = new GregorianCalendar();
//		c2.set(Calendar.HOUR_OF_DAY, 23);
//		c2.set(Calendar.MINUTE, 59);
//		c2.set(Calendar.SECOND, 59);
//		return DateUtil.formatToDateTime(c2.getTime());
//	}
//
//	/**
//	 * 获取当前日期的前一天
//	 * 
//	 * @return
//	 * @throws ParseException
//	 * @throws Exception
//	 */
//	public static Date getCurrentDayBefore() {
//		// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
//		SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd");
//		Date beginDate = new Date();
//		Calendar date = Calendar.getInstance();
//		date.setTime(beginDate);
//		date.set(Calendar.DATE, date.get(Calendar.DATE) - 1);
//		try {
//			Date endDate = dft.parse(dft.format(date.getTime()));
//			return endDate;
//		} catch (ParseException e) {
//			// TODO Auto-generated catch block
//          logger.info("异常信息为:" + e.getMessage());
//			return null;
//		}
//	}
//
//
//
//	/**
//	 *按周计算起始日期
//	 * * @param year
//	 * @param startWeek
//	 * @param endWeek
//	 * @return
//	 */
//	public static Map<String,Date> getWeekStartDayAndEndDay(int year,int startWeek,int endWeek){
//
//		Calendar calFirstDayOfTheYear = new GregorianCalendar(year,
//				Calendar.JANUARY, 1);
//		calFirstDayOfTheYear.add(Calendar.DATE, 7 * (startWeek-1));
//		calFirstDayOfTheYear.add(Calendar.DATE, 1);
//		int dayOfWeek = calFirstDayOfTheYear.get(Calendar.DAY_OF_WEEK);
//
//		Calendar calFirstDayInWeek = (Calendar)calFirstDayOfTheYear.clone();
//		calFirstDayInWeek.add(Calendar.DATE,
//				calFirstDayOfTheYear.getActualMinimum(Calendar.DAY_OF_WEEK) - dayOfWeek);
//		calFirstDayInWeek.add(Calendar.DATE, 1);
//		Date firstDayInWeek = calFirstDayInWeek.getTime();
//
//		int temp = endWeek-(startWeek-1);
//
//		Calendar   rightNow   =   Calendar.getInstance();
//		rightNow.setTime(firstDayInWeek);
//		rightNow.add(Calendar.DATE, temp * 7);//你要加减的日期
//		rightNow.add(Calendar.DATE,-1);
//		Date   endDate=rightNow.getTime();
//		Map<String,Date> map = new HashMap<String,Date>();
//		map.put("startDate",firstDayInWeek);
//		map.put("endDate",endDate);
//		return  map;
//	}
//
//	public static Date LongToDate(Long timeMills) {
//		// TODO Auto-generated method stub
//		Calendar cd = Calendar.getInstance();
//		cd.setTimeInMillis(timeMills);
//		return cd.getTime();
//	}
//
//	/**
//	 * 获取对应日期的月份
//	 * @param date
//	 * @return
//	 */
//	public static int getMonthByDate(Date date) {
//		Calendar cal = Calendar.getInstance();
//		cal.setTime(date);
//		int month = cal.get(Calendar.MONTH);
//		return month;
//	}
//
//	/**
//	 * 传入毫秒数 将毫秒数转化为时 分 秒的格式
//	 * 
//	 * @param millis
//	 * @return
//	 */
//	public static String millisecondToHMS(Long millis) {
//		long hour = millis / (60 * 60 * 1000);
//		long minute = (millis - hour * 60 * 60 * 1000) / (60 * 1000);
//		long second = (millis - hour * 60 * 60 * 1000 - minute * 60 * 1000) / 1000;
//		if (second >= 60) {
//			second = second % 60;
//			minute += second / 60;
//		}
//		if (minute >= 60) {
//			minute = minute % 60;
//			hour += minute / 60;
//		}
//		StringBuffer sb = new StringBuffer();
//		if (hour > 0) {
//			if (hour < 9) {
//				sb.append(0).append(hour).append("时");
//			} else {
//				sb.append(hour).append("时");
//			}
//		}
//
//		if (hour > 0) {
//			if (minute > 0 && minute < 9) {
//				sb.append(0).append(minute).append("分");
//			} else if (minute == 0) {
//				sb.append("00").append("分");
//			} else {
//				sb.append(minute).append("分");
//			}
//		} else {
//			if (minute > 0 && minute < 9) {
//				sb.append(0).append(minute).append("分");
//			} else if (minute > 0) {
//				sb.append(minute).append("分");
//			}
//		}
//
//		if (hour > 0 || minute > 0) {
//
//			if (second > 0 && second < 9) {
//				sb.append(0).append(second).append("秒");
//			} else if (second > 0) {
//				sb.append(second).append("秒");
//			}
//			if (hour > 0) {
//				if (second == 0) {
//					sb.append("00").append("秒");
//				}
//			}
//		} else {
//			if (second > 0 && second < 9) {
//				sb.append(0).append(second).append("秒");
//			} else if (second > 0) {
//				sb.append(second).append("秒");
//			}
//		}
//		if (sb.length() == 0) {
//			sb.append("-");
//		}
//		return sb.toString();
//	}
//	
//	/**
//	 * 获取当天的年月日. 格式:yyyyMMdd
//	 * @return
//	 */
//	public static String getNowDate(){
//		SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
//		return format.format(new Date());
//	}
//	
//	/**
//	 * 获取当天的年月日. 格式:yyyyMMdd
//	 * @return
//	 */
//	public static String getNowDateYMDHM(){
//		SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmm");
//		return format.format(new Date());
//	}
//	
//	/**
//	 * 把毫秒数变时年月日时分秒
//	 * @param millis
//	 * @return
//	 */
//	public static String formatDuring(long millis) {  
//		return formatDuring(millis, "yyyy-MM-dd HH:mm:ss");
//	}  
//	
//	
//	public static String formatDuring(long millis,String defaultValue) { 
//		if(org.apache.commons.lang3.StringUtils.isBlank(defaultValue)){
//			defaultValue="yyyy-MM-dd HH:mm:ss";
//		}
//		Calendar cd=Calendar.getInstance();
//		cd.setTimeInMillis(millis);
//           SimpleDateFormat format = new SimpleDateFormat(defaultValue);
//		String sb=format.format(cd.getTime());
//           return sb;
//	}
//
//	/**
//	 * 获取开始  结束时间段内的每一天日期
//	 * @param dBegin
//	 * @param dEnd
//	 * @return
//	 */
//	public static List<Date> findDates(Date dBegin, Date dEnd) {
//		List lDate = new ArrayList();
//		lDate.add(dBegin);
//		Calendar calBegin = Calendar.getInstance();
//		// 使用给定的 Date 设置此 Calendar 的时间
//		calBegin.setTime(dBegin);
//		Calendar calEnd = Calendar.getInstance();
//		// 使用给定的 Date 设置此 Calendar 的时间
//		calEnd.setTime(dEnd);
//		// 测试此日期是否在指定日期之后
//		while (dEnd.after(calBegin.getTime())) {
//			// 根据日历的规则，为给定的日历字段添加或减去指定的时间量
//			calBegin.add(Calendar.DAY_OF_MONTH, 1);
//			lDate.add(calBegin.getTime());
//		}
//		return lDate;
//	}
//
//	/**
//	 * 获取对应月份的总天数
//	 * @param date
//	 * @return
//	 */
//	public static int getMonthDays(Date date){
//		Calendar calendar = new GregorianCalendar();
//		calendar.setTime(date); //放入你的日期
//		return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
//	}
//
//	//刚时间转换成整型  10:30-->1030
//	public static Integer trimChar(String str){
//		int index = str.indexOf(":");
//		String newString =  str.substring(0,index) + str.substring(index+1,str.length());
//		return Integer.parseInt(newString);
//	}
//
//	/**
//	 * 日期减去制定的分钟
//	 * @param dt
//	 * @param temp
//	 * @return
//	 */
//	public static Date dateDValueMinute(Date dt,Integer temp){
//		SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMdd");
//		Calendar rightNow = Calendar.getInstance();
//		rightNow.setTime(dt);
//		rightNow.add(Calendar.MINUTE,-temp);//日期加10天
//		Date dt1=rightNow.getTime();
//
//		return dt1;
//	}
//
//	public static Date beforeThreeMonthDay(){
//		Date dNow = new Date();   //当前时间
//		Calendar calendar = Calendar.getInstance(); //得到日历
//		calendar.setTime(dNow);//把当前时间赋给日历
//		calendar.add(calendar.MONTH, -3);  //设置为前3月
//		Date dBefore = calendar.getTime();   //得到前3月的时间
//		SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); //设置时间格式
//		String defaultStartDate = sdf.format(dBefore);    //格式化前3月的时间
//
//		return parseToDate(defaultStartDate);
//	}
//
//	public static void main(String[] args) {
//		System.out.println(beforeThreeMonthDay());
//
//	}
//
//
//}